package operation;

import book.Book;
import book.BookLise;

import java.util.Scanner;

/*
     AddOperation类：用于实现图书的增添
                     通过输入添加书籍来遍历书架寻找
                     该书书架没有且不重复则添加成功
                     该书书架已经存在，则添加失败

*/
public class AddOperation implements  IOperation {

    //重写接口标准方法 work
    @Override
    public void work(BookLise bookLise) {
        System.out.println("增加图书");

        //输入书名
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入你增加查找的图书名字");
        String name = scanner.nextLine();

        //输入作者
        System.out.println("请输入你增加查找的图书作者");
        String author = scanner.nextLine();

        //输入类型
        System.out.println("请输入你增加查找的图书类型");
        String type = scanner.nextLine();

        //输入价格
        scanner.nextLine();
        System.out.println("请输入你增加查找的图书价格");
        int price = scanner.nextInt();

        //遍历书架来判断是否有相同书
        for (int i = 0; i < bookLise.getNowSize(); i++) {
            if (name.equals(bookLise.getBooks(i).getName())) {

                //有相同的书，直接退出
                System.out.println("不能添加重复的书籍" + "《"+ name + "》");
                return;
            }
        }

        //没有相同的书执行添加书操作，默认为最后一个
        bookLise.setBooks(new Book(name,author,type,price),bookLise.getNowSize());

        ////成功增添目标书，并且书架书总数加一
        bookLise.setNowSize(bookLise.getNowSize()+1);
        System.out.println("《"+ name + "》" + "增加成功");
    }
}
